/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.market.negocio;

import com.market.datos.cDatos;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;

/**
 * Esta clase contiene los atributos y métodos para el registro de los 
 * usuarios proveedores del proyecto MarketFarm
 * @author Ricardo
 */
public class cRegistro_proveedor {
private cDatos db;
    private String sql;
    private Vector vr;
    
    /**
     * Constructor que inicializa los atributos de la clase
     */
    public cRegistro_proveedor() {
        this.db = new cDatos();
        this.db.openConnection();
    }
          
    /**
     * Retorna el tipo de proveedor: botica, farmacia, drogueria, laboratorio
     * @return
     */
    public Vector getTipo() {
    	sql  = "SELECT tipo_codigo, tipo_nombre ";
    	sql += "FROM tipo_proveedor ORDER BY tipo_nombre";
        
        System.out.println(sql);
    	this.vr = this.db.query( sql );
        return this.vr;
    }
    
    /**
     * Almacena un registro de un nuevo proveedor
     * @param request Parámetros del formulario para un nuevo proveedor 
     */
    public void grabarNuevoRegistro(HttpServletRequest request) {
        
        String xcod = request.getParameter("xruc");
        String xnick = request.getParameter("xnick");
        String xcla = request.getParameter("xcla");
        
        sql = "INSERT INTO usuario (usu_codigo, usu_tipo, usu_nick, usu_password) ";
        sql += "VALUES ('" + xcod + "','" + "proveedor" + "','" + xnick + "','" + xcla + "')";

       // System.out.println(sql);
        this.db.insert(sql);
        
        String xnom = request.getParameter("xnom");
        String xruc = request.getParameter("xruc");
        String xdir = request.getParameter("xdir");
        String xtipo = request.getParameter("xtipo");
               
        sql = "INSERT INTO proveedor (prov_codigo, prov_nombre, prov_ruc, prov_direccion, usu_codigo, tipo_codigo) ";
        sql += "VALUES ('" + xruc + "','" + xnom + "','" + xruc + "','" + xdir + "','" + xruc + "','" + xtipo + "')";
        
        //System.out.println(sql);
        this.db.insert(sql);
        
        //suc
        String cod = getNuevoCodigoSuc();
        sql = "INSERT INTO sucursal (sucur_codigo, sucur_nombre, sucur_direccion, tipo_codigo, prov_codigo) ";
        sql += "VALUES ('" + cod + "','" + xnom + "','" + xdir + "','" + xtipo + "','" + xruc + "')";
        this.db.insert(sql);
        System.out.println(sql);
        //
    }
    
    /**
     * Almacena los cambios hechos en el registro del proveedor actual
     * @param request Parámetros del formulario modificar registro del proveedor
     */
    public void grabarModificarRegistro(HttpServletRequest request) {
        String xcod = request.getParameter("xcod");
        String xnom = request.getParameter("xnom");
        String xape = request.getParameter("xape");
        String xdir = request.getParameter("xdir");
        String xocu = request.getParameter("xocu");
               
       
           }
    
    /**
     * Obtener un nuevo Codigo de Sucursal para ingresarlo a la data
     * @return Codigo de sucursal
     */
    protected String getNuevoCodigoSuc() {
    	String rpta = "";
    	sql = "select count(*) as cant from sucursal";
    	vr = this.db.query( sql );
    	Vector v1 = (Vector)vr.get(0);
    	int cant = Integer.parseInt((String)v1.get(0));
    	if ( cant <= 0 )
    		rpta = "101";
    	else {
        	sql = "select max(sucur_codigo) as codigo from sucursal";
        	vr = this.db.query( sql );
        	v1 = (Vector)vr.get(0);
    		String xcod = (String)v1.get(0);
    		rpta = "" + (Integer.parseInt(xcod) + 1);
    	}
    	return rpta;
    
    
    }

    
}
